1. Technical Field
The present invention relates in general to a data processing system, and in particular to touch-sensitive display apparatus for inputting instructions to a data processing system in response to tactile stimuli. Still more particularly, the present invention relates to a touch-sensitive display apparatus which does not require recalibration when image parameters are adjusted.
2. Description of the Related Art
Many raster-scanned display devices, such as cathode ray tube displays and liquid crystal displays are now designed to be compatible with a wide range of different computer systems each capable of generating one or more different raster display formats or "modes". Each mode is generally characterized by a different pair of line and frame synchronization frequencies. Such display devices usually have user controls which permit an operator to correct geometric image distortions such as East-West pin-cushion distortion or trapezoidal distortion. The user controls also permit the operator to adjust parameters of the displayed image such as width, height and position according to personal preference.
A typical touch sensitive display comprises a display device which has a transparent touch screen mounted on its display screen. The touch screen includes sensors for detecting a touch on the touch screen by, for example, a stylus or an operator's finger. A touch screen processor converts the outputs of the sensors into cartesian coordinates indicative of the position of the touch on the screen. The coordinates are communicated typically to a host computer system to which the touch display is connected via a serial port such as an RS232 port. The host computer system responds to the input touch coordinates by moving a cursor on the display screen to the position at which the touch was applied.
Conventionally, a calibration routine is performed to align the coordinates produced by the touch screen processor with data displayed on the screen. The calibration routine is typically in the form of computer program microcode stored partly in a touch memory of the touch display and partly in the host computer system as device driver software. Typically, the host computer system starts the calibration routine in response to an instruction from the user. The host computer system, under control of the calibration code in the device driver software, responds by generating targets in the top left and bottom right corners of the display area. The user is then instructed to touch the screen at each of the targets in turn. The outputs generated by the sensors in response to the touches are detected by the touch processor and stored as digital reference values or calibration data in the touch memory. The calibration microcode stored in the touch memory instructs the touch processor to associate the reference values stored in the touch memory with the top left and bottom right corners of the display area. The touch processor, under the control of the calibration microcode in the touch memory assigns top left and bottom right coordinates of a field of sensitivity to the reference values stored in the touch memory. The calibration microcode stored in the touch memory then instructs the touch processor to interpolate between the values stored in the touch memory to assign intermediate values to a grid of coordinates extending between the top left and bottom right coordinates of the field of sensitivity. The touch processor effectively produces a look up table for mapping digital values corresponding to outputs from the sensors to coordinates within the field of sensitivity. The coordinates of the field of sensitivity thus map directly to the display area. On completion of the mapping, the touch processor sends to message to the host computer system to indicate that the calibration routine is complete. In response to the message, the host computer system reverts to running normal application software.
A problem with this arrangement is that if the displayed image is moved relative to the field of sensitivity, the calibration data stored in the touch memory is invalidated. Therefore, a touch to, for example, an icon displayed in the displayed area may not invoke the execution of the desired task by the host computer system. If the mismatch is extreme, the coordinates received by the host computer system may even invoke the unwanted execution of another task. Therefore, in conventional touch displays, the calibration routine must be repeated each time the image parameters are adjusted. It should also be appreciated that, in conventional touch displays, the calibration data may also be invalidated by a change in display mode because the image may move from one display mode to another.
Consequently, it would be desirable to provide a data processing system having a touch screen which does not require recalibration when image display parameters are modified.